home *** CD-ROM | disk | FTP | other *** search
/ Aminet 7 / Aminet 7 - August 1995.iso / Aminet / comm / tcp / clchat40.lha / CLChat40 / CLChatServer.DOC < prev    next >
Text File  |  1995-05-04  |  11KB  |  317 lines

  1. CLChatSystem 4.0 for AmiTCP
  2. ---------------------------
  3.  
  4. (1) Copyrights
  5.  
  6.     The CLChatServer, the CLChatD, CLChatLink and the CLChatGUI are
  7.     Copyright (C) 1994-1995 Oliver Wagner (o.wagner@pluribus.wupper.de)
  8.     All Rights Reserved.
  9.  
  10.     The files are freely distributable as long as no modifications are
  11.     made to any part of the package and all files are distributed in
  12.     a single archive, accompanied by this documentation file.
  13.  
  14.     CLChatGUI is a MUI application. MUI is (C) 1993-1995 Stefan Stuntz.
  15.  
  16.     AmiTCP is (C) 1994-95 NSDI Inc.
  17.  
  18.  
  19. (2) Overview
  20.  
  21.     This is a multi-user multi-channel chat system somewhat based on
  22.     IRC. It features:
  23.  
  24.     o unlimited number of users
  25.     o unlimited number of channels
  26.     o private messaging
  27.     o automatic user identification
  28.     o flood protection
  29.     o NEW: user banning
  30.     o NEW: multiple server capability with loop protection
  31.     o channel operator privileges for setting channel topics
  32.       and removing users from a channel
  33.     o chat operator privilege for global channel operator status
  34.       and removing users from chat completely
  35.  
  36.     The user frontend for the chat is a comfortable GUI client
  37.     providing
  38.  
  39.     o easy user & channel operations
  40.     o input history
  41.     o automatic notifications of certain events via Deiconification
  42.       or beep
  43.     o builtin ARexx-Port
  44.     o NEW: Dialog windows for direct user<->user communication
  45.     o NEW: direct file transfers to remote users via IP
  46.  
  47.  
  48. (3) Origin
  49.  
  50.     The Chatsystem is originally part of the Connectline/Amiga BBS
  51.     package which features an ANSI text client for online usage
  52.     and the possibility to login to the chat during Hydra file 
  53.     transfers. The standlone ChatServer and the GUI client are
  54.     only a subset of the whole package.
  55.  
  56.     Write to Connectline@pluribus.wupper.de for more information
  57.     about Connectline or take a look at 
  58.     
  59.      http://www.pluribus.wupper.de/Connectline.html
  60.  
  61.     AK runs a CLChat WWW page; try
  62.  
  63.      http://ramiga.cts.com/CLChat/CLChat.html
  64.  
  65. (4) Server Installation
  66.  
  67.     Copy the CLChatServer to AmiTCP:bin
  68.     Copy the CLChatLink to AmiTCP:bin
  69.     Copy the CLChatD to AmiTCP:serv
  70.  
  71.     Add the following line to AmiTCP:db/services:
  72.     clchat/5555
  73.  
  74.     Add the following line to AmiTCP:db/InetD.conf:
  75.     clchat    stream      tcp nowait root amitcp:serv/clchatd
  76.  
  77.     Add the following line to AmiTCP:bin/startnet:
  78.     run >NIL: AmiTCP:bin/CLChatServer
  79.  
  80.     Optionally create a file named AmiTCP:db/ChatServer.MOTD
  81.     containing a text file which will be display to each new user
  82.     logging into the chat.
  83.  
  84.     Optionally create a file named AmiTCP:db/ChatServer.OPList
  85.     containing a list of users which have the "Chat Operator"
  86.     privilege. These users automatically receive channel operator
  87.     status for every channel they join and can use the hidden
  88.     server command "/KILL" to remove other users from the
  89.     chat server. They may also the "/NETINFO" command to inquiry
  90.     chat network information, and use the BAN commands to list,
  91.     add or remove user bans.
  92.     This file contains entries of the following form:
  93.     Nickname Netaddress
  94.     For example:
  95.     Olli olli@lsd.wupper.de
  96.  
  97.     Optionally create a file named AmiTCP:db/ChatServer.Servers
  98.     containing a list of remote servers allowed to connect to your
  99.     server. This file contains a list of FQDN addresses or a
  100.     standard AmigaDOS wildcard matching FQDN addresses. If this
  101.     file is missing, all servers are allowed to connect.
  102.     If you want to ban a single server only, you can add a
  103.     exclusive pattern. For example, to ban server "lsd.wupper.de"
  104.     only, add the line
  105.     ~(lsd.wupper.de)
  106.     The first line of the file may contain a number specifying
  107.     the maximum number of servers to connect. This defaults to 8.
  108.  
  109.     You can make CLChatD and CLChatLink resident to increase
  110.     startup speed and reduce memory usage; this might proof
  111.     useful if you run or accept several connections.
  112.  
  113.  
  114. (5) Client installation
  115.  
  116.     No installation required, simply run the Client from either
  117.     Shell or Workbench. It will prompt for your user information
  118.     and the server to connect to. See the Client guide for
  119.     more information about using it.
  120.  
  121.  
  122. (6) Using the server
  123.  
  124.     Using the server should be quite self-explainatory. Use the
  125.     command "/?" to obtain a list of available commands.
  126.  
  127.     Channels are created automatically when a users joins
  128.     and removed when the last user leaves. There is a
  129.     persistant default channel called MAIN on which every
  130.     new users starts. The first user entering a channel
  131.     will obtain channel operator status. He may change
  132.     the topic, kick other users, give or remove channel
  133.     operator status from them.
  134.  
  135.     Specifc users may be banned from a server using the
  136.     /BANADD command which is available to chat operators only.
  137.     Bans are stored in the file "AmiTCP:DB/ChatServer.UserBans"
  138.     and contain FQDN addresses or a AmigaDOS wildcard matching
  139.     FQDN addresses. You may want to use wildcards of the form
  140.     "#?@machine" because the user part of addresses is generally
  141.     the same as the nickname which may be set by the user.
  142.     For example, to ban users from lsd.wupper.de, use the
  143.     entry
  144.     #?@lsd.wupper.de
  145.  
  146.     Note that adding a line "#?" will make you quite lonely
  147.     on your server.
  148.  
  149.     The server respons to three shell signals. CTRL^C will
  150.     cause it to terminate instantly, CTRL^E will cause a
  151.     restart (with reloading the executable) and CTRL^F will
  152.     cause the server to output diagnostic stats into the
  153.     shell window.
  154.  
  155.  
  156. (7) Connecting several servers
  157.  
  158.     After running your local server, use the command "CLChatLink"
  159.     to connect to a different server. Usage is
  160.     CLChatLink <remoteservername> <remoteport> [retrycount]
  161.  
  162.     The retrycount is optional; if specified, CLChatLink will
  163.     retry a connection until the count runs out. If a already
  164.     successfully established connection break, retries start
  165.     back from 1.
  166.  
  167.     Note that the server-server protocol is quite bandwidth
  168.     expensive, so you should *NOT* create a server for single
  169.     users only.
  170.  
  171.     Note that nicknames must be unique on all servers; if servers
  172.     connect and a nick collision occurs, both users are removed
  173.     from their correspondending servers and a nick collision
  174.     message is broadcasted.
  175.  
  176.     Server loops may be created; every server message carries
  177.     a unique messageid which will be checked by every server
  178.     it passes; dupes are filtered out. Server loops may raise
  179.     broadcast speed esspecially on slow network connections.
  180.     The server uses some kind of smart routing for private
  181.     messages: if the destination of a private message is on a
  182.     directly linked server, the message is send to this
  183.     server only. If not, it is broadcasted, so no routing
  184.     tables are necessary.
  185.  
  186.  
  187. (8) History:
  188.  
  189.     See the CLChatGUI.(doc|guide) for more specific GUI
  190.     client revision information.
  191.  
  192.     Release 3.0
  193.     -----------
  194.     - the server now uses smart routing for private messages;
  195.       if the destination server is a direct link, no broadcast
  196.       is produced
  197.     - added user banning capabilities
  198.     - added /NETINFO server inquiry broadcast
  199.     - added chat operator command output on /HELP if the
  200.       use is a chat operator.
  201.     - made /SERVERS command available to normal chat users
  202.     - updated CLChatLink to correctly fill in the remote
  203.       server name.
  204.     - extended server msgs with a message id tag to filter
  205.       message dupes produced by server loops.
  206.  
  207.     Release 3.1
  208.     -----------
  209.     - everything is now compiled with SAS/C 6.55. Also added
  210.       server version directly compiled for 68030 CPUs.
  211.     - added more detailed NETINFO output.
  212.     - added /STAT command for chat operators. Also "/STAT *"
  213.       broadcasts /STAT requests via net.
  214.     - extended /USERS command with "S" option to display
  215.       users with the servers they're on.
  216.     - added /RESTART command for chat operators to have
  217.       the server restart itself. Also CTRL^E will cause
  218.       a restart.
  219.     - added CTRL^F response displaying server stats to
  220.       the shell.
  221.     - fixed CLChatLink and CLChatD to fill in the IP
  222.       address of remote servers for the /SERVERS command
  223.       output.
  224.     - fixed smart privmsg routing.
  225.     - fixed user removement for flood protection and
  226.       /KILL commands.
  227.     - fixed may GUI client bugs & quirks.
  228.     - GUI client now has IP file transfer option similar
  229.       to DCC
  230.     - GUI client now has a PING option to test links
  231.       from user to user directly
  232.     - fixed bug in the server which caused a stack
  233.       overwrite on privmsgs > 230 bytes
  234.     - both CLChatD and CLChatLink are now "pure" code
  235.       and can be made resident for more efficient memory
  236.       usage
  237.  
  238.     Release 3.2
  239.     -----------
  240.     - fixed local /STAT output to report only local
  241.       users
  242.     - fixed server validation bug; checked IP addresse instead
  243.       of FQDN
  244.     - fixed server reject error message
  245.     - cleaned up GUI client scroller handling
  246.     - added PLUBOT sample code
  247.  
  248.  
  249.     Release 3.3
  250.     -----------
  251.     - CLChatLink was seriously broken; retry didn't worked
  252.       and broken active links causes server crashes due to
  253.       illegal messages.
  254.     - increased stacksizes or reduced stack usage in all parts
  255.       of the package due to frequent crashes on some setups.
  256.     - some GUI client cleanup.
  257.  
  258.     Release 3.4
  259.     -----------
  260.     - fixed some quirks in the GUI-Client
  261.     - fixed time bug in the CLChatServer
  262.  
  263.     Release 3.6
  264.     -----------
  265.     - did some work on the CLChatGUI-Client (see history)
  266.     - added MS-Windows client (clchatwi.LZH).
  267.     - new chat operator command /NOTICE.
  268.     - logfile option: if a file AmiTCP:Log/ChatServer.LOG
  269.       exists, the chat server will log all outgoing
  270.       messages with that file.
  271.     - cleaned up /MSG to send the acknowledge msg before
  272.       the destination message.
  273.     - fixed several typos.
  274.     - CLChatLink now no longer needs the port arguments,
  275.       but defaults to 5555.
  276.  
  277.    Release 3.7
  278.    -----------
  279.    - added installer script by Robert Reiswig (rcr@netcom.com)
  280.  
  281.  
  282.    Release 3.8
  283.    -----------
  284.    - fixed a bug in the server connect code which caused
  285.      server names to be truncated at offset 19, causing trouble
  286.      when having a server validation list.
  287.  
  288.    Release 4.0
  289.    -----------
  290.    - did some work on the CLChatGUI-Client (see history)
  291.    - fixed a bug in CLChatlink causing trouble with server
  292.      connects if "ChatServer.Servers" existed ("\r" wasn't
  293.      filtered correctly)
  294.    - several internal fixes & cleanups in the chatserver.
  295.  
  296. (9) ARCnet
  297.  
  298.     There is already a public Internet chat network based on
  299.     CLChat called the "ARCnet" (Amiga Relay Chat Network).
  300.     See the client documentation for up-to-date information
  301.     about this network and servers you can connect to.
  302.  
  303.  
  304. (10) Thanks must go to:
  305.  
  306.      Roy Millican  - for encouragement and running the first
  307.                      public CLChat server on the InterNet ;-)
  308.  
  309.      James Atwill, Ralf Deifel
  310.                    - for their help during multi server testing
  311.  
  312.      Jeremiah S. Junken
  313.                    - for the CLChatGUI icon
  314.  
  315.      Robert Reiswig
  316.                    - for the Installer script
  317.